Images are frequently used to represent electronic items. An image that is used to represent an electronic item is referred to herein as a “representative image”. In some cases, representative images are designed by humans. For example, in the context of electronic file systems, manually designed icons are often used to visually represent files and folders.
In other cases, representative images are automatically generated based on information extracted from the electronic items that the images are supposed to represent. Automatically-generated representative images are referred to herein as “thumbnails”.
In the context of digital photos, thumbnails are typically lower-resolution images that are automatically generated based on content extracted from higher-resolution images. In the context of digital video, thumbnails are typically digital images extracted from the video content of a digital video file.
Because thumbnails are automatically generated, it is possible for thumbnails to turn out less than ideal. For example, a badly-generated thumbnail of a digital photo may fail to convey the content or beauty of the corresponding photo. Similarly, a badly-generated thumbnail of a video file may fail to clearly and accurately convey the content of the corresponding video file.
Video search engines are examples of systems that represent videos using thumbnails. Video search engines may, for example, be designed to represent each video by a thumbnail that is generated from a frame selected from the video. A video frame upon which a thumbnail is based is referred to herein as a keyframe.
In some cases, due to mistake made by the extraction algorithm and/or network traffic situation, the keyframes that are selected by video search engines to create thumbnails are not informative for users to understand what the corresponding video is about. Although video search engines have accompanying metadata for each video, bad thumbnails tend to hurt user experience significantly. Any such bad thumbnails may be found by manually checking the thumbnail database used by a video search engine. However, such manual checking is very tedious and expensive.
Selecting keyframes from which to generate thumbnails is merely one example of a situation in which it would be useful to have the ability to automatically determine the quality of an image. As another example, consider a surveillance system in which digital photos are taken on a periodic basis. It would be desirable to automatically measure the quality of the photos, and discard those that are not likely to have content that is of interest.
As yet another example of a situation in which it would be useful to automatically determine the quality of an image, consider the situation in which a user takes thousands of digital photos, and wants to select which photos to keep in the user's collection. Under these conditions, it would be useful to automatically identify those photos that are likely to be “bad”. Once the bad photos have been automatically identified and removed, the user may then manually inspect the remaining photos to identify those of greatest value.
The approaches described in this section are approaches that could be pursued, but not necessarily approaches that have been previously conceived or pursued. Therefore, unless otherwise indicated, it should not be assumed that any of the approaches described in this section qualify as prior art merely by virtue of their inclusion in this section.